<?xml version='1.0' encoding='ISO-8859-1' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"      
      xmlns:p="http://primefaces.org/ui">

    <ui:composition template="/pages/core/plantilla/plantillaPrincipal.xhtml">
        <ui:define name="contenido">             
            <h:form onsubmit="return checkSubmit();"  id="frmPrincipal">
                <p:panel id="pnlPrincipal" header="#{i18n['form.area.titulo.panel']} / #{sessionMBean.titulo} #{areaMBean.dto.id}" style="#{applicationMBean.estiloTitulo}">                    
                    <h:panelGrid id="pgFormDto" columns="10" cellpadding="4">
                        <h:outputLabel for="itDescripcion" value="#{i18n['form.maquina.descripcion']}" styleClass="label"/>
                        <p:inputText id="itDescripcion" label="#{i18n['form.maquina.descripcion']}" maxlength="200"
                                     value="#{maquinaMBean.dto.descripcion}" readonly="#{sessionMBean.accion == applicationMBean.ver}"
                                     required="true" size="60" styleClass="txtCampoObligatorio">
                            <f:validateLength maximum="200" minimum="1"/>
                        </p:inputText>

                        <h:outputLabel for="itDescripcionCorta" value="#{i18n['form.maquina.descripcion.corta']}" styleClass="label"/>
                        <p:inputText id="itDescripcionCorta" label="#{i18n['form.maquina.descripcion.corta']}" maxlength="10"
                                     value="#{maquinaMBean.dto.descripcionCorta}" readonly="#{sessionMBean.accion == applicationMBean.ver}"
                                     required="true" size="10" styleClass="txtCampoObligatorio">
                            <f:validateLength maximum="10" minimum="1"/>
                        </p:inputText>
                        
                        <h:outputLabel for="itTipoMaquina" styleClass="label" value="#{i18n['form.maquina.tipo.maquina']}"/>
                        <p:selectOneMenu id="itTipoMaquina" value="#{maquinaMBean.dto.tipoMaquinaDto}" required="true" converter="tipoMaquinaConvert" style="#{applicationMBean.estiloObligatorio}" disabled="#{sessionMBean.accion == applicationMBean.ver}">
                            <f:selectItems value="#{maquinaMBean.listaTipoMaquina}" var="tipoMaquinaDto" itemLabel="#{tipoMaquinaDto.descripcion}" itemValue="#{tipoMaquinaDto}"/>
                        </p:selectOneMenu>
                        
                        <h:outputLabel for="itAnioCompra" value="#{i18n['form.maquina.anio.compra']}" styleClass="label"/>
                        <p:calendar id="itAnioCompra" value="#{maquinaMBean.dto.anioCompra}" label="#{i18n['form.maquina.anio.compra']}" pattern="#{applicationMBean.formatoFecha}"  required="true"
                                    style="#{applicationMBean.estiloObligatorio}" disabled="#{sessionMBean.accion == applicationMBean.ver}" > 
                        </p:calendar>
                        
                        <h:outputLabel for="itCicloUso" value="#{i18n['form.maquina.ciclo.uso']}" styleClass="label"/>
                        <p:inputText id="itCicloUso" label="#{i18n['form.maquina.ciclo.uso']}" maxlength="10"
                                     value="#{maquinaMBean.dto.cicloUso}" readonly="#{sessionMBean.accion == applicationMBean.ver}"
                                     required="true" size="10" styleClass="txtCampoObligatorio">
                            <f:validateLength maximum="10" minimum="1"/>
                        </p:inputText>

                        <h:outputLabel styleClass="label" value="#{i18n['general.label.activo']}"/>
                        <p:selectBooleanCheckbox value="#{maquinaMBean.dto.estado}" style="#{applicationMBean.estilo}" disabled="#{sessionMBean.accion == applicationMBean.ver}"/>
                    </h:panelGrid>
                    
                    <h:outputLabel value="#{i18n['general.label.campos.auditoria']}" styleClass="subTitulo" rendered="#{maquinaMBean.dto.id!=null}"/>
                    <p:separator rendered="#{maquinaMBean.dto.id!=null}"/>
                    <h:panelGrid id="pgCamposAuditoria" columns="6" cellspacing="10" rendered="#{maquinaMBean.dto.id!=null}">
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.usuario.creacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{maquinaMBean.dto.usuarioCreacionDto.descripcion}"/>
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.fecha.creacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{maquinaMBean.dto.fechaCreacion}">
                            <f:convertDateTime pattern="#{applicationMBean.formatoFechaHoraSegundos}"  timeZone="#{applicationMBean.timeZone}"/>
                        </h:outputLabel>                            
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.terminal.creacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{maquinaMBean.dto.terminalCreacion}"/>
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.usuario.modificacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{maquinaMBean.dto.usuarioDto.descripcion}"/>
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.fecha.modificacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{maquinaMBean.dto.fecha}">
                            <f:convertDateTime pattern="#{applicationMBean.formatoFechaHoraSegundos}"  timeZone="#{applicationMBean.timeZone}"/>
                        </h:outputLabel>                            
                        <h:outputLabel styleClass="label" value="#{i18n['general.label.terminal.modificacion']}"/>
                        <h:outputLabel styleClass="txtCampo" value="#{maquinaMBean.dto.terminal}"/>
                    </h:panelGrid>
                    <f:facet name="footer">
                        <p:commandButton title="#{i18n['general.button.guardar.tip']}" accesskey="#{applicationMBean.keyGuardar}" ajax="false"
                                         icon="ui-icon ui-icon-disk" rendered="#{sessionMBean.accion != applicationMBean.ver}"
                                         style="#{applicationMBean.estilosBtnGuardar}"
                                         onclick="return confirm('#{i18n.general_mensaje_confirmacion}');"
                                         value="#{i18n['general.button.guardar']}"
                                         action="#{maquinaMBean.guardar}">
                        </p:commandButton>

                        <p:commandButton title="#{i18n['general.button.atras.tip']}" accesskey="#{applicationMBean.keyRetroceder}" ajax="false"
                                         icon="ui-icon ui-icon-arrowreturnthick-1-w" immediate="true"
                                         style="#{applicationMBean.estilosBtnRetroceder}"
                                         value="#{i18n['general.button.atras']}"
                                         action="#{maquinaMBean.retroceder}">
                        </p:commandButton>

                        <p:commandButton title="#{i18n['bitacora.ver.historial']}"
                                         icon="ui-icon ui-icon-calculator"
                                         value="#{i18n['bitacora.ver.historial']}"
                                         ajax="true"
                                         style="#{applicationMBean.estilosBtnHistorial}"
                                         rendered="#{maquinaMBean.dto.id!=null}"
                                         oncomplete="dlgBitacoraEntidad.show()"
                                         update=":frmPopupBitacoras:pgFormPopupBitacoras"
                                         actionListener="#{maquinaMBean.verBitacora}">
                        </p:commandButton>

                        <p:commandButton title="#{i18n['general.button.nuevo.tip']}" accesskey="#{applicationMBean.keyNuevo}"
                                         icon="ui-icon ui-icon-plus" rendered="#{maquinaMBean.dto.id!=null}"
                                         value="#{i18n['general.button.nuevo']}"
                                         style="#{applicationMBean.estilosBtnNuevo}"
                                         ajax="false"
                                         actionListener="#{maquinaMBean.nuevo}">
                        </p:commandButton>
                    </f:facet>
                </p:panel>
                <p:tabView id="tabPrincMaquina" style="#{applicationMBean.estiloTitulo}">
                    <p:tab id="tabCosto" title="#{i18n['form.maquina.costos']}" rendered="#{maquinaMBean.dto.id != null}">
                        <h:panelGrid id="pngTablaCosto" columns="1" styleClass="tabla_dinam">
                            <h:panelGrid columns="13" cellpadding="4">
                                <p:commandButton title="#{i18n['form.maquina.boton.nuevo.costo']}"
                                                 icon="ui-icon ui-icon-plus"                                                 
                                                 style="#{applicationMBean.estilosBtnNuevoDetalle}"
                                                 value="#{i18n['form.maquina.boton.nuevo.costo']}"
                                                 rendered="#{sessionMBean.accion!=applicationMBean.ver}" ajax="true"
                                                 oncomplete="carDialogCosto.show()"  immediate="true"
                                                 update=":frmCosto:pgFormDtoCosto"
                                                 action="#{maquinaMBean.nuevoCosto}">                                    
                                </p:commandButton>
                            </h:panelGrid>
                            <h:panelGrid columns="1">
                                <p:dataTable id="tblPrincipalCosto" value="#{maquinaMBean.dto.listaCostos}" var="dtoCosto" widgetVar="widTable"
                                             rowKey="#{dtoCosto.id}" paginator="true" paginatorPosition="top" rows="#{sessionMBean.cantidadRegistros}"
                                             emptyMessage="#{i18n['form.maquina.no.detalles']}" styleClass="estiloPanel">
                                    <p:column style="text-align:center;">
                                        <h:panelGrid id="pgBotonesGrillaCosto" columns="10" cellspacing="5" styleClass="estiloPanelGrid">
                                            <p:commandButton icon="ui-icon ui-icon-search" title="#{i18n['general.button.ver.tip']}"
                                                             action="#{maquinaMBean.verCosto}" ajax="true"
                                                             oncomplete="carDialogCosto.show()" update=":frmCosto:pgFormDtoCosto"
                                                             >
                                                <f:setPropertyActionListener value="#{dtoCosto}" target="#{maquinaMBean.detaCostoDto}"/>
                                            </p:commandButton>
                                            <p:commandButton icon="ui-icon ui-icon-pencil" title="#{i18n['general.button.editar.tip']}" 
                                                             rendered="#{sessionMBean.accion!=applicationMBean.ver}"
                                                             ajax="true" update=":frmCosto:pgFormDtoCosto"
                                                             action="#{maquinaMBean.editarCosto}" 
                                                             oncomplete="carDialogCosto.show()">
                                                <f:setPropertyActionListener value="#{dtoCosto}" target="#{maquinaMBean.detaCostoDto}"/>
                                            </p:commandButton>
                                        </h:panelGrid>
                                    </p:column>
                                    <p:column headerText="#{i18n['general.label.id']}" styleClass="general">
                                        <h:outputText value="#{dtoCosto.id}" styleClass="general"/>
                                    </p:column>
                                    <p:column headerText="#{i18n['form.maquina.valido.desde']}" styleClass="general">
                                        <h:outputText value="#{dtoCosto.validoDesde}" styleClass="general">
                                            <f:convertDateTime pattern="#{applicationMBean.formatoFechaHora}"  timeZone="#{applicationMBean.timeZone}"/>
                                        </h:outputText>
                                    </p:column>
                                    <p:column headerText="#{i18n['form.maquina.valor.compra']}" styleClass="general">
                                        <h:outputText value="#{dtoCosto.valorCompra}" styleClass="general">
                                            <f:convertNumber pattern="#{applicationMBean.formatoMontos}"/>
                                        </h:outputText>
                                    </p:column>
                                    <p:column headerText="#{i18n['form.maquina.costo']}" styleClass="general">
                                        <h:outputText value="#{dtoCosto.costo}" styleClass="general">
                                            <f:convertNumber pattern="#{applicationMBean.formatoMontos}"/>
                                        </h:outputText>
                                    </p:column>
                                    <p:column headerText="#{i18n['form.maquina.um.costo']}" styleClass="general">
                                        <h:outputText value="#{dtoCosto.umCostoDto.descripcion}" styleClass="general"/>
                                    </p:column>
                                    <p:column headerText="#{i18n['form.maquina.importe.utillaje']}" styleClass="general">
                                        <h:outputText value="#{dtoCosto.importeUtillaje}" styleClass="general">
                                            <f:convertNumber pattern="#{applicationMBean.formatoMontos}"/>
                                        </h:outputText>
                                    </p:column>
                                    <p:column headerText="#{i18n['form.maquina.amortizacion']}" styleClass="general">
                                        <h:outputText value="#{dtoCosto.amortizacion}" styleClass="general">
                                            <f:convertNumber pattern="#{applicationMBean.formatoMontos}"/>
                                        </h:outputText>
                                    </p:column>
                                    <p:column headerText="#{i18n['form.maquina.valor.anio']}" styleClass="general">
                                        <h:outputText value="#{dtoCosto.valorAnio}" styleClass="general">
                                            <f:convertNumber pattern="#{applicationMBean.formatoMontos}"/>
                                        </h:outputText>
                                    </p:column>
                                    <p:column headerText="#{i18n['form.maquina.dias.anio']}" styleClass="general">
                                        <h:outputText value="#{dtoCosto.diasAnio}" styleClass="general"/>
                                    </p:column>
                                    <p:column headerText="#{i18n['form.maquina.horas.dia']}" styleClass="general">
                                        <h:outputText value="#{dtoCosto.horasDia}" styleClass="general"/>
                                    </p:column>
                                    <p:column headerText="#{i18n['form.maquina.horas.imp.anio']}" styleClass="general">
                                        <h:outputText value="#{dtoCosto.horasImpAnio}" styleClass="general"/>
                                    </p:column>
                                    <p:column headerText="#{i18n['form.maquina.unidades.costo.anual']}" styleClass="general">
                                        <h:outputText value="#{dtoCosto.unidadesCostoAnual}" styleClass="general">
                                            <f:convertNumber pattern="#{applicationMBean.formatoMontos}"/>
                                        </h:outputText>
                                    </p:column>
                                </p:dataTable>
                            </h:panelGrid>
                        </h:panelGrid>
                    </p:tab>
                    
                    <p:tab id="tabMant" title="#{i18n['form.maquina.mantenimientos']}" rendered="#{maquinaMBean.dto.id != null}">
                        <h:panelGrid id="pngTblMant" columns="1" styleClass="tabla_dinam">
                            <h:panelGrid columns="13" cellpadding="4">
                                <p:commandButton title="#{i18n['form.maquina.boton.nuevo.mantenimiento']}"
                                                 icon="ui-icon ui-icon-plus"                                                 
                                                 style="#{applicationMBean.estilosBtnNuevoDetalle}"
                                                 value="#{i18n['form.maquina.boton.nuevo.mantenimiento']}" 
                                                 rendered="#{sessionMBean.accion!=applicationMBean.ver}" ajax="true"
                                                 oncomplete="carDialogMant.show()" update=":tabPrincMant"
                                                 action="#{maquinaMBean.nuevoMant}">
                                </p:commandButton>
                            </h:panelGrid>
                            <h:panelGrid columns="1">
                                <p:dataTable id="tblPrincipalMant" value="#{maquinaMBean.dto.listaMant}" var="dtoMant" widgetVar="widTable"
                                             rowKey="#{dtoMant.id}" paginator="true" paginatorPosition="top" rows="#{sessionMBean.cantidadRegistros}"
                                             emptyMessage="#{i18n['form.maquina.no.detalles']}" styleClass="estiloPanel">
                                    <p:column style="text-align:center;">
                                        <h:panelGrid id="pgBotonesGrillaMant" columns="10" cellspacing="5" styleClass="estiloPanelGrid">
                                            <p:commandButton icon="ui-icon ui-icon-search" title="#{i18n['general.button.ver.tip']}"
                                                             action="#{maquinaMBean.verMant}" ajax="true"
                                                             oncomplete="carDialogMant.show()" update=":tabPrincMant"
                                                             >
                                                <f:setPropertyActionListener value="#{dtoMant}" target="#{maquinaMBean.detaMantDto}"/>
                                            </p:commandButton>
                                            <p:commandButton icon="ui-icon ui-icon-pencil" title="#{i18n['general.button.editar.tip']}" 
                                                             rendered="#{sessionMBean.accion!=applicationMBean.ver}"
                                                             ajax="true" update=":tabPrincMant"
                                                             action="#{maquinaMBean.editarMant}" 
                                                             oncomplete="carDialogMant.show()">
                                                <f:setPropertyActionListener value="#{dtoMant}" target="#{maquinaMBean.detaMantDto}"/>
                                            </p:commandButton>
                                        </h:panelGrid>
                                    </p:column>
                                    <p:column headerText="#{i18n['general.label.id']}" styleClass="general">
                                        <h:outputText value="#{dtoMant.id}" styleClass="general"/>
                                    </p:column>                                    
                                    <p:column headerText="#{i18n['form.maquina.descripcion']}" styleClass="general">
                                        <h:outputText value="#{dtoMant.descripcion}" styleClass="general"/>
                                    </p:column>
                                    <p:column headerText="#{i18n['form.maquina.descripcion.corta']}" styleClass="general">
                                        <h:outputText value="#{dtoMant.descripcionCorta}" styleClass="general"/>
                                    </p:column>
                                    <p:column headerText="#{i18n['form.maquina.tipo.matenimiento']}" styleClass="general">
                                        <h:outputText value="#{dtoMant.tipoMantenimientoDto.descripcion}" styleClass="general"/>
                                    </p:column>
                                    <p:column headerText="#{i18n['form.maquina.op.mantenimiento']}" styleClass="general">
                                        <h:outputText value="#{dtoMant.opMantenimientoDto.descripcion}" styleClass="general"/>
                                    </p:column>
                                    <p:column headerText="#{i18n['form.maquina.tiempo.esperado']}" styleClass="general">
                                        <h:outputText value="#{dtoMant.tiempoEsperado}" styleClass="general">
                                            <f:convertNumber pattern="#{applicationMBean.formatoMontos}"/>
                                        </h:outputText>
                                    </p:column>                                    
                                </p:dataTable>
                            </h:panelGrid>
                        </h:panelGrid>
                    </p:tab>
                </p:tabView>
            </h:form>
            <p:dialog id="dialogCosto" header="#{i18n['panel.titulo.maquina.costo']}" widgetVar="carDialogCosto" resizable="false"
                      width="600" height="240" modal="true">
                <p:messages id="msjDialogCosto" showDetail="false" autoUpdate="true"/>
                <ui:include src="/pages/prod/maquina/maquinaCosto.xhtml"/> 
            </p:dialog>
            <p:dialog id="dialogMant" header="#{i18n['panel.titulo.maquina.mantenimiento']}" widgetVar="carDialogMant" resizable="false"
                      width="600" height="360" modal="true">
                <p:messages id="msjDialogMant" showDetail="false" autoUpdate="true"/>
                <ui:include src="/pages/prod/maquina/maquinaMant.xhtml"/>
            </p:dialog>
            <p:dialog id="dialogPer" header="#{i18n['panel.titulo.maquina.periodicidad']}" widgetVar="carDialogPer" resizable="false"
                      width="500" height="180" modal="true">
                <p:messages id="msjDialogPer" showDetail="false" autoUpdate="true"/>
                <ui:include src="/pages/prod/maquina/maquinaPer.xhtml"/>
            </p:dialog>
            <p:dialog id="idDlgBitacoraEntidad" header="#{i18n['bitacora.titulo']}" widgetVar="dlgBitacoraEntidad" resizable="false"  
                      width="900" height="450" modal="true">                        
                <ui:include src="/pages/bitacora/bitacoras.xhtml" /> 
            </p:dialog>
        </ui:define>
    </ui:composition>
</html>